/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package controller;

import java.awt.BasicStroke;
import java.awt.Color;
import java.awt.Stroke;
import java.io.Serializable;
import view.GUI.LabelReader;

/**
 *
 * @author Jelle
 */
public class Constants implements Serializable {

    private static final String DIR_TO = "src\\load\\";
    private static final String DIR_OBJECTS = "model.graphic.objects.";
    private static final String NODE_STRING = "GNode";
    private static final String BOXNODE_STRING = "GBoxNode";
    private static final String TRANSMITTERNODE_STRING = "GTransmitterNode";
    private static final String INPUT_STRING = "GInput";
    private static final String INPUTPORT_STRING = "GInputPort";
    private static final String OUTPUT_STRING = "GOutput";
    private static final String OUTPUTPORT_STRING = "GOutputPort";
    private static final String TRIGGER_STRING = "GTrigger";
    private static final String TRIGGERPORT_STRING = "GTriggerPort";
    private static final String DISPATCHER_STRING = "GDispatcher";
    private static final String DISPATCHERPORT_STRING = "GDispatcherPort";
    private static final String HANDLECONNECTION_STRING = "GHandleConnection";
    private static final String TRIGGERCONNECTION_STRING = "GTriggerConnection";
    private static final String RESIZEHANDLE_STRING = "GResizeHandle";
    private static final String TRIGGERTRANSMITTER_IN_STRING = "TriggerTransmitterIn";
    private static final String VALUETRANSMITTER_IN_STRING = "ValueTransmitterIn";
    private static final String TRIGGERTRANSMITTER_OUT_STRING = "TriggerTransmitterOut";
    private static final String VALUETRANSMITTER_OUT_STRING = "ValueTransmitterOut";
    private static final String RECTANGLEGRAPHICAL_STRING = "RectangleGraphical";
    private static final String DELETE_STRING = "delete";
    private static final String INPPORTS_STRING = "AbstractInPort";
    private static final String OUTPORTS_STRING = "AbstractOutPort";
    private static final String PORTS_STRING = "RectangleAttachment";
    private static final String HANDLE_STRING = "Attachment";
    private static final String GHANDLE_STRING = "Attachment";
    private static final String CONNECTION_STRING = "GConnection";
    private static final String NAME_STRING = "name";
    private static final String TYPE_STRING = "type";
    private static final String VALUE_STRING = "value";
    private static final String CLEAR_STRING = "clear";
    private static final String NORMAL_STRING = "normal";
    private static final String ALL_STRING = "all";
    private static String baseColorString = "basecolor";
    private static String backGroundColorString = "backgroundcolor";
    private static String highlightColorString = "highlightcolor";
    private static Stroke dashedStroke = new BasicStroke(1.0f, // Width
            BasicStroke.CAP_SQUARE, // End cap
            BasicStroke.JOIN_MITER, // Join style
            10.0f, // Miter limit
            new float[]{2.0f, 5.0f}, // Dash pattern
            0.0f);
    private static Stroke dashedBoldStroke = new BasicStroke(2.0f, // Width
            BasicStroke.CAP_SQUARE, // End cap
            BasicStroke.JOIN_MITER, // Join style
            10.0f, // Miter limit
            new float[]{2.0f, 5.0f}, // Dash pattern
            0.0f);
    private static Stroke basicStroke = new BasicStroke(1.0f);
    private static Color defaultBaseColor = Color.BLACK;
    private static Color defaultBackGroundColor = Color.WHITE;
    private static Color defaultHighlightColor = Color.RED;
    private static int portWidth = 30;
    private static int portHeight = 15;

    private static int highlighttime = 300;
    private static int pausetime = 900;

    public static int getHighlighttime() {
        return highlighttime;
    }

    public static void setDebugTime(int x){
        Constants.highlighttime = x;
        Constants.pausetime = x*3;
    }

    public static int getPausetime() {
        return pausetime;
    }

    
    /**
     * @return the inputString
     */
    public static String getInputString() {
        return INPUT_STRING;
    }

    /**
     * @return the inputportString
     */
    public static String getInputportString() {
        return INPUTPORT_STRING;
    }

    /**
     * @return the outputString
     */
    public static String getOutputString() {
        return OUTPUT_STRING;
    }

    /**
     * @return the outputportString
     */
    public static String getOutputportString() {
        return OUTPUTPORT_STRING;
    }

    /**
     * @return the callableString
     */
    public static String getTriggerString() {
        return TRIGGER_STRING;
    }

    /**
     * @return the callableportString
     */
    public static String getTriggerportString() {
        return TRIGGERPORT_STRING;
    }

    /**
     * @return the dispatcherString
     */
    public static String getDispatcherString() {
        return DISPATCHER_STRING;
    }

    /**
     * @return the dispatcherportString
     */
    public static String getDispatcherportString() {
        return DISPATCHERPORT_STRING;
    }

    /**
     * @return the deleteString
     */
    public static String getDeleteString() {
        return DELETE_STRING;
    }

    /**
     * @return the inportsString
     */
    public static String getInportsString() {
        return INPPORTS_STRING;
    }

    /**
     * @return the outportsString
     */
    public static String getOutportsString() {
        return OUTPORTS_STRING;
    }

    /**
     * @return the nodeString
     */
    public static String getNodeString() {
        return NODE_STRING;
    }

    /**
     * @return the handleString
     */
    public static String getAttachmentString() {
        return HANDLE_STRING;
    }

    /**
     * @return the ghandleString
     */
    public static String getGhandleString() {
        return GHANDLE_STRING;
    }

    /**
     * @return the connectionString
     */
    public static String getConnectionString() {
        return CONNECTION_STRING;
    }

    /**
     * @return the handleconnecthandleString
     */
    public static String getHandleconnectionString() {
        return HANDLECONNECTION_STRING;
    }

    /**
     * @return the triggerconnectionString
     */
    public static String getTriggerconnectionString() {
        return TRIGGERCONNECTION_STRING;
    }

    /**
     * @return the resizehandleString
     */
    public static String getResizehandleString() {
        return RESIZEHANDLE_STRING;
    }

    /**
     * @return the name
     */
    public static String getNameString() {
        return NAME_STRING;
    }

    /**
     * @return the typeString
     */
    public static String getTypeString() {
        return TYPE_STRING;
    }

    /**
     * @return the clearString
     */
    public static String getClearString() {
        return CLEAR_STRING;
    }

    /**
     * @return the normalString
     */
    public static String getNormalString() {
        return NORMAL_STRING;
    }

    /**
     * @return the allString
     */
    public static String getAllString() {
        return ALL_STRING;
    }

    /**
     * @return the dirTo
     */
    public static String getDirTo() {
        return DIR_TO;
    }

    /**
     * @return the dirHandles
     */
    public static String getDirObjects() {
        return DIR_OBJECTS;
    }

    /**
     * @return the portsString
     */
    public static String getPortsString() {
        return PORTS_STRING;
    }

    /**
     * @return the dashedStroke
     */
    public static Stroke getDashedStroke() {
        return dashedStroke;
    }

    /**
     * @return the basicStroke
     */
    public static Stroke getBasicStroke() {
        return basicStroke;
    }

    /**
     * @return the baseColor
     */
    public static Color getBaseColor() {
        return defaultBaseColor;
    }

    /**
     * @return the backGroundColor
     */
    public static Color getDefaultBackGroundColor() {
        return defaultBackGroundColor;
    }

    /**
     * @return the highlightColor
     */
    public static Color getDefaultHighlightColor() {
        return defaultHighlightColor;
    }

    /**
     * @return the portWidth
     */
    public static int getPortWidth() {
        return portWidth;
    }

    /**
     * @return the portHeight
     */
    public static int getPortHeight() {
        return portHeight;
    }

    /**
     * @return the valueString
     */
    public static String getValueString() {
        return VALUE_STRING;
    }

    /**
     * @return the dashedBoldStroke
     */
    public static Stroke getDashedBoldStroke() {
        return dashedBoldStroke;
    }

    /**
     * @return the boxNodeString
     */
    public static String getBoxNodeString() {
        return BOXNODE_STRING;
    }

    /**
     * @return the triggerTransmitterString
     */
    public static String getTriggerTransmitterInString() {
        return TRIGGERTRANSMITTER_IN_STRING;
    }

    /**
     * @return the valueTransmitterString
     */
    public static String getValueTransmitterInString() {
        return VALUETRANSMITTER_IN_STRING;
    }

    /**
     * @return the triggerTransmitterOutString
     */
    public static String getTriggerTransmitterOutString() {
        return TRIGGERTRANSMITTER_OUT_STRING;
    }

    /**
     * @return the valueTransmitterOutString
     */
    public static String getValueTransmitterOutString() {
        return VALUETRANSMITTER_OUT_STRING;
    }

    /**
     * @return the rectangleGraphicalString
     */
    public static String getRectangleGraphicalString() {
        return RECTANGLEGRAPHICAL_STRING;
    }

    /**
     * @return the TransmitterNodeString
     */
    public static String getTransmitterNodeString() {
        return TRANSMITTERNODE_STRING;
    }

    /**
     * @return the baseColorString
     */
    public static String getBaseColorString() {
        return baseColorString;
    }

    /**
     * @return the backGroundColorString
     */
    public static String getBackGroundColorString() {
        return backGroundColorString;
    }

    /**
     * @return the highlightColorString
     */
    public static String getHighlightColorString() {
        return highlightColorString;
    }

    public static String getInfoAbout(String Name) {
         return LabelReader.getInstance().getString("info" + Name);
    }
}

    